/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package co.uniminuto.edu.gimnasioInteligente.beans;

import co.uniminuto.edu.gimnasioInteligente.entities.Usuario;
import co.uniminuto.edu.gimnasioInteligente.session.HistoricoMedidasFacade;
import co.uniminuto.edu.gimnasioInteligente.session.UsuarioFacade;
import java.util.ArrayList;
import java.util.List;
import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;

/**
 *
 * @author diegoalejandro
 */
@ManagedBean(name = "perfilesSimilaresBean")
public class perfilesSimilaresBean {

    @EJB
    HistoricoMedidasFacade MyhistoricoMedidasFacadeSession;
    @EJB
    UsuarioFacade myusuarioFacadeSession;
    
    //Otros
    private String busquedaPor;
    private Integer criterioBusqueda;
    private Integer valorBusqueda;

    //Listas
    private List<Usuario> usuariosReporte;
    
    /**
     * Creates a new instance of perfilesSimilares
     */
    public perfilesSimilaresBean() {
    }

    public List<Usuario> getUsuariosReporte() {
        return usuariosReporte;
    }

    public void setUsuariosReporte(List<Usuario> usuariosReporte) {
        this.usuariosReporte = usuariosReporte;
    }

    public String getBusquedaPor() {
        return busquedaPor;
    }

    public void setBusquedaPor(String busquedaPor) {
        this.busquedaPor = busquedaPor;
    }

    public Integer getCriterioBusqueda() {
        return criterioBusqueda;
    }

    public void setCriterioBusqueda(Integer criterioBusqueda) {
        this.criterioBusqueda = criterioBusqueda;
    }

    public Integer getValorBusqueda() {
        return valorBusqueda;
    }

    public void setValorBusqueda(Integer valorBusqueda) {
        this.valorBusqueda = valorBusqueda;
    }

    public void submit() {
        String criterio = "";

        switch (criterioBusqueda) {
            case 1:
                criterio = "=";
                break;
            case 2:
                criterio = ">=";
                break;
            case 3:
                criterio = "<=";
                break;
        }
        String genero = "";
        switch (valorBusqueda) {
            case 1:
                genero = "FEMENINO";
                break;
            case 2:
                genero = "MASCULINO";
                break;
        }
        System.out.print("parametros:" + valorBusqueda + "criterio"
                + criterio + "busqueda por: " + busquedaPor);
        List<Usuario> usuarios = new ArrayList<>();
        if (busquedaPor.equalsIgnoreCase("Edad")) {
            usuarios = myusuarioFacadeSession.getUsuariosPorEdad(valorBusqueda, criterio);
            System.out.println("Lista de edad:" + usuarios.size());
             setUsuariosReporte(usuarios);
        } else if (busquedaPor.equalsIgnoreCase("Genero")) {
            usuarios = myusuarioFacadeSession.getUsuariosPorGenero(genero);
            System.out.println("Lista de generos:" + usuarios.size());
             setUsuariosReporte(usuarios);
        } else if (busquedaPor.equalsIgnoreCase("Peso")) {
            usuarios = myusuarioFacadeSession.getUsuariosPorPeso(criterio, valorBusqueda);
             System.out.println("Lista por peso: " + usuarios.size());
             setUsuariosReporte(usuarios);
        }
        
        

    }
}
